package cn.yuanqiao.archive.management.service;

import cn.yuanqiao.archive.management.domain.YqPgg;
import cn.yuanqiao.archive.management.domain.YqZpjl;
import cn.yuanqiao.archive.management.domain.YqZpmx;

import java.util.List;
import java.util.Map;

/**
 * 盘规格Service接口
 * 
 * @author sy
 * @date 2023-07-10
 */
public interface IYqPggService 
{
    /**
     * 查询盘规格
     * 
     * @param pggId 盘规格主键
     * @return 盘规格
     */
    public YqPgg selectYqPggByPggId(Long pggId);

    /**
     * 查询盘规格列表
     * 
     * @param yqPgg 盘规格
     * @return 盘规格集合
     */
    public List<YqPgg> selectYqPggList(YqPgg yqPgg);

    /**
     * 新增盘规格
     * 
     * @param yqPgg 盘规格
     * @return 结果
     */
    public String insertYqPgg(YqPgg yqPgg);

    /**
     * 修改盘规格
     * 
     * @param yqPgg 盘规格
     * @return 结果
     */
    public String updateYqPgg(YqPgg yqPgg);

    /**
     * 批量删除盘规格
     * 
     * @param pggIds 需要删除的盘规格主键集合
     * @return 结果
     */
    public String deleteYqPggByPggIds(Long[] pggIds);

    /**
     * 删除盘规格信息
     * 
     * @param pggId 盘规格主键
     * @return 结果
     */
    public int deleteYqPggByPggId(Long pggId);

    /**
     * 根据panguigeID删组盘记录
     *
     * @param pggId 盘规格主键
     * @return 结果
     */
    public String deleteYqZpjlByPggId(Long pggId);

    /**
     * 根据panguigeID解除组盘状态
     *
     * @param pggId 盘规格主键
     * @return 结果
     */
    public String cancel(Long pggId);

    public List<Map<YqZpjl,List<YqZpmx>>> selectYqZpjlListByPgg(Long pggId);
}
